草庐IT

python - 动态模块 : query using more than two attributes

全部标签

ruby - "extend self"是实用模块的反模式吗?

关闭。这个问题是opinion-based.它目前不接受答案。想改善这个问题吗?更新问题,以便可以通过editingthispost用事实和引文回答问题.7年前关闭。ImprovethisquestionSteveKlabnik最近在pullrequest中说对于实用程序模块:[Thecode]obscuresthefactthattheseareclassmethods,andwewanttousethemthatway.Plus,Ithinkthatextendselfisgenerallyananti-pattern,andshouldn'treallybeusedexcepti

Ruby 使用命名空间/模块

例如:require'net/http'uri=URI('http://example.com/some_path?query=string')Net::HTTP.start(uri.host,uri.port)do|http|request=Net::HTTP::Get.newuriresponse=http.requestrequest#Net::HTTPResponseobjectend摆脱Net::HTTP的正确/rubist方法是什么?即HTTP::Get.new()或只是Get.new() 最佳答案 如果你想缩短这些,你

ruby-on-rails - 在 ruby​​ (NoMethodError) 模块中定义一个方法

我正在学习ruby​​,我遇到了一些我不明白的事情。我知道ruby​​中的modules用于与::(或.)命名空间并与include指令混合。当我将一些方法分组在一个模块中,而不是将它们放在一个类中时,问题就来了。这是一个例子:moduleFamiliar#thiswillnotworkdefask_agereturn"Howoldareyou?"end#thiswillworkdefFamiliar::greetingreturn"What'sup?"endend#thiscallreturns**NoMethodError**puts(Familiar::ask_age())#th

ruby-on-rails - 在 Rails 应用程序中使用模块建模

我有一个模型需要从辅助源加载外部数据。存在许多Web服务,我的模型可以从中获取数据(可交换),但我不想创建会使更改服务变得困难的代码(成本因可变和固定使用而显着不同,并且可能会改变将是必需的)。我想创建一个驱动程序来执行交互(然后如果服务需要切换,则创建更多自定义驱动程序)。不幸的是,由于驱动程序和模型的紧密耦合,将代码提取到插件或gem中没有意义。我已将所有代码提取到一个模块中(参见示例),目前已在我的模型上方声明了代码。moduleSynchronizedefrefreshself.attributes=...self.saveendendclassDataRails(3.0.0)

Ruby 动态类。如何修复 "warning: class variable access from toplevel"

我正在尝试编写一个程序,根据从文件中读取的配置动态定义ruby​​类。我知道我可以使用Class.new来做到这一点。这是一个示例程序:x=[1,2,3]Test=Class.newdo@@mylist=xdeffooputs@@mylistendendTest.new.foo当我运行它时,我得到以下输出(使用ruby​​1.9.3p0运行):c:/utils/test.rb:4:warning:classvariableaccessfromtoplevelc:/utils/test.rb:7:warning:classvariableaccessfromtoplevel123Does

ruby - 按名称动态获取 Ruby 类常量

我有一个类API,它从第三方API中提取对象并将它们构建到类型为APIObject的子类的对象中。APIObject子类与我从中提取的API中的对象名称相匹配:User我想在APIObject中定义一个类方法,允许我使用标准Rails访问器拉取对象:user=User.findid我想要将此调用转换为这样的API调用的方法:API::User::findByIdid我想使用self.class.name访问APIObject子类(User)的名称,并使用它来调用常量(API::User),但我知道API::self.class.name不会工作。我可以为每个子类一遍又一遍地重写这个方法

ruby-on-rails - 动态获取对象的属性

如何动态获取activerecord对象的属性值?例如,我有一个名为attr_name的变量。我想做这样的事情:person=Person.find(1)attr_name="address"address=person.(attr_name)可以使用哪个function_name? 最佳答案 使用person.attributes[attr_name]或person.read_attribute(att_name),或者更短,然后是person[attr_name]. 关于ruby-o

ruby-on-rails - 使用基类与基模块重构 ActiveRecord 模型

A类和B类是相同的:classA像这样用基类进行重构有什么区别:classBase与这样使用基本模块:moduleBasedeffooputs"foo"endendclassA一种方式优于另一种方式吗? 最佳答案 这两种方法之间存在根本区别,所有其他答案都缺失,那就是Rails对STI(单表继承)的实现:http://api.rubyonrails.org/classes/ActiveRecord/Base.html(找到“单表继承”部分)基本上,如果您像这样重构您的基类:classBase然后,您应该有一个名为“bases”的数据

ruby - 使用 MIddleman 3.0 - 如何在动态页面上设置单独的页面标题?

我正在中间人中建立一个简单的投资组合网站。我根据本地YAML数据动态生成“工作”页面。这是在config.rb中:data.work.projects.eachdo|project|page"/work/#{project[0]}.html",:proxy=>"project_template.html"do@project=projectendend出于SEO目的,我希望这些动态生成的页面中的每一个都具有唯一的页面标题和描述。标题目前在布局文件中是这样设置的%title=current_page.data.title我知道我可以像这样使用frontmatter设置current_pa

ruby-on-rails - Rails 3 的动态路由

我的任务是按照路由模型开发一个Rails应用程序。我需要有PageController和Page模型。页面url必须类似于/contacts、/shipping、/some_page。我还需要有CatalogController和Category模型。类别url必须类似于/laptops、/smartphones/android。它将是ProductsController和Product模型,产品的url必须是行/laptops/toshiba_sattelite_l605,/smartphones/安卓/htc_magic我知道这个问题可以通过使用像这样的URL来解决/page/sh